/*
 * Bloque.h
 *
 *  Created on: 06/09/2011
 *      Author: gisedaye
 */

#ifndef BLOQUE_H_
#define BLOQUE_H_

#include <list>
#include <sstream>

#include "Registro.h"

using namespace std;

class Bloque {
private:
	int numero;
	list<Registro *> * registros;
	int cantidadRegistros;
	int espacioLibre;

public:
	Bloque(int nro);
	Bloque();
	void agregarRegistro(Registro * reg);
	string bloqueString();
	string getListaRegistrosString();
	void setRegistrosString(string strRegistros);
	void levantarBloque(string strBloque);
	bool estaLleno(int tamanio);
	int tamanioBloque();
	int tamanioListaRegistros();
	int strToInt(string s);
	string  intToStr(int i);
	virtual ~Bloque();
    int getCantidadRegistros();
    int getEspacioLibre();
    int getNumero();
    list<Registro*> *getRegistros();
    void setCantidadRegistros(int cantidadRegistros);
    void setEspacioLibre(int espacioLibre);
    void setNumero(int numero);
    void setRegistros(list<Registro*> *registros);

};

#endif /* BLOQUE_H_ */
